<!--
 * @Description: 我的收藏页面组件
 * @Author: hai-27
 * @Date: 2020-02-20 17:22:56
 * @LastEditors: hai-27
 * @LastEditTime: 2020-03-12 19:34:00
 -->
<template>
  <div class="collect">
    <!-- Add a static page for my favorite module -->
    <div class="collect-header">
      <div class="collect-title">
        <i class="el-icon-collection-tag" style="color: #ff6700;"></i>
        我的收藏
      </div>
    </div>
    <div class="content">
      <div class="goods-list" v-if="collectList.length>0">
        <MallList :list="collectList" :isDelete="true" :collect-list="list"></MallList>
      </div>
      <!-- 收藏列表为空的时候显示的内容 -->
      <div v-else class="collect-empty">
        <div class="empty">
          <h2>您的收藏还是空的！</h2>
          <p>快去购物吧！</p>
        </div>
      </div>
      <!--  收藏列表为空的时候显示的内容END -->
    </div>
    <div v-if="collectList.length>0">
      <el-divider></el-divider>
      <center>
        <el-button type="text" @click="load">加载更多</el-button>
      </center>
    </div>
  </div>
</template>
<script>
export default {
  data() {
    return {
      /**
       * @收藏的商品列表
       * */
      collectList: this.$store.state.List.GoodsVo,
      /**
       * @收藏列表
       * */
      list: this.$store.state.List.CollectionexVo,
      /**
       * @页码
       * */
      page: 1,
      pageSize: 10,
    };
  },
  activated() {
    this.loadCollect();
  },
  methods: {
    load() {
      this.page += 1;
      this.loadCollect()
    },
    loadCollect() {
      const _this = this;
      // 获取收藏数据
      this.$axios
          .get(this.$store.state.baseURL + 'client/' + this.$store.state.controller.Collect + '/' +
              this.$store.state.mappings.like + '?' + 'OperatorId=' + this.$store.getters.getUser.cid + '&state=' + 1
              + '&cid=' + this.$store.getters.getUser.cid + "&page=" + this.page + "&pageSize=" + this.pageSize
          +'&sortType='+1)
          .then(res => {
            if (_this.page === 1) {
              _this.list = res.data;
              _this.collectList = [];
              for (let i = 0; i < res.data.length; i++) {
                _this.collectList.push(res.data[i].good);
              }
            }else if (_this.page !== 1) {
              if (res.data.length === 0) {
                _this.page -= 1;
                _this.$notify({
                  title: '警告',
                  message: '没有更多啦',
                  type: 'warning'
                });
                return;
              }
              for (let i = 0; i < res.data.length; i++) {
                _this.collectList.push(res.data[i].good);
              }
            }
            //console.log(this.list);
          })
          .catch(err => {
            return Promise.reject(err);
          });
    }
  }
};
</script>
<style>
.collect {
  background-color: #f5f5f5;
}

.collect .collect-header {
  height: 64px;
  background-color: #fff;
  border-bottom: 2px solid #ff6700;
}

.collect .collect-header .collect-title {
  width: 1225px;
  margin: 0 auto;
  height: 64px;
  line-height: 58px;
  font-size: 28px;
}

.collect .content {
  padding: 20px 0;
  width: 1225px;
  margin: 0 auto;
}

.collect .content .goods-list {
  margin-left: -13.7px;
  overflow: hidden;
}

/* 收藏列表为空的时候显示的内容CSS */
.collect .collect-empty {
  width: 1225px;
  margin: 0 auto;
}

.collect .collect-empty .empty {
  height: 300px;
  padding: 0 0 130px 558px;
  margin: 65px 0 0;
  background: url(../assets/imgs/cart-empty.png) no-repeat 124px 0;
  color: #b0b0b0;
  overflow: hidden;
}

.collect .collect-empty .empty h2 {
  margin: 70px 0 15px;
  font-size: 36px;
}

.collect .collect-empty .empty p {
  margin: 0 0 20px;
  font-size: 20px;
}

/* 收藏列表为空的时候显示的内容CSS END */
</style>